#pragma once
#include <iostream>
#include <vector>
#include <cmath>

using namespace std;

double mu = 0.012277471;
double T1 = 17.06521656015796, T2 = 19.140540691377;

class Slover
{
private:
    vector<double> u(6),v(6);
public:
    Slover(){};
    void get_v(vector<double> u, vector<double> &v) 
    {
	v[0] = u[0];
	v[1] = u[1];
	v[2] = u[2];
	v[3];
	v[4] = - mu*u[2]/((u[1]*u[1]+u[2]*u[2]+(u[0]+mu-1)*(u[0]+mu-1))*sqrt(u[1]*u[1]+u[2]*u[2]+(u[0]+mu-1)*(u[0]+mu-1))) - (1 - mu)*u[2]/((u[1]*u[1]+u[2]*u[2]+(u[0]+mu)*(u[0]+mu))*sqrt(u[1]*u[1]+u[2]*u[2]+(u[0]+mu)*(u[0]+mu)));
	v[5] = - mu*u[2]/((u[1]*u[1]+u[2]*u[2]+(u[0]+mu-1)*(u[0]+mu-1))*sqrt(u[1]*u[1]+u[2]*u[2]+(u[0]+mu-1)*(u[0]+mu-1))) - (1 - mu)*u[2]/((u[1]*u[1]+u[2]*u[2]+(u[0]+mu)*(u[0]+mu))*sqrt(u[1]*u[1]+u[2]*u[2]+(u[0]+mu)*(u[0]+mu)));
    };
    
};

